package com.interview.proxy;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;

public class JdkMapperProxy implements InvocationHandler {
    //目标对象，被代理对象
    private Object targect;
    public JdkMapperProxy(Object targect){
        this.targect=targect;
    }

    public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
        System.out.println("前置通知...在代理方法之前处理");
        //目标方法，目标方法参数
        Object result = method.invoke(targect, args);//被执行目标方法，被代理的方法
        System.out.println("后置通知...在代理方法之后处理");
        return null;
    }
}